package org.tinygroup.lucene472.builder;

import org.tinygroup.lucene472.LuceneDynamicManager;
import org.tinygroup.lucene472.config.LuceneConfig;

/**
 * 动态配置的lucene构建器(多例)
 * @author yancheng11334
 *
 */
public class DynamicLuceneBuilder extends BaseLuceneBuilder{

	private String userId=null;
	private String configId=null;

	private LuceneDynamicManager luceneDynamicManager=null;
	
	public LuceneDynamicManager getLuceneDynamicManager() {
		if(luceneDynamicManager==null){
			luceneDynamicManager = beanContainer.getBean(LuceneDynamicManager.DEFAULT_BEAN_NAME);
		}
		return luceneDynamicManager;
	}

	public void setLuceneDynamicManager(LuceneDynamicManager luceneDynamicManager) {
		this.luceneDynamicManager = luceneDynamicManager;
	}

	public String getUserId() {
		return userId;
	}

	public DynamicLuceneBuilder(String userId,String configId){
		super();
		this.userId = userId;
		this.configId = configId;
	}

	public LuceneConfig buildConfig() {
		return getLuceneDynamicManager().getFullTextConfig(userId,configId);
	}

	public String[] buildQueryFields() {
		return buildDefaultQueryFields();
	}
	
	
}
